System and method for inputting characters using a directional pad

ABSTRACT

A system and method for enabling a user to input characters using a directional pad of a computing device. The directional pad is configured to generate directional inputs. The invention creates mappings for the directional inputs where each of the mappings associates at least one of the directional inputs with at least one of the characters. The user may activate one of the mappings by selecting one of the directional inputs. While the mapping is activated, the user may input a character by selecting a directional input associated with that character.

BACKGROUND OF THE INVENTION

[0001] Mobile computing devices are becoming increasingly popular amongbusiness users as well as causal users. Manufacturers continue to expandthe capabilities of these mobile computing devices to perform many ofthe tasks that have traditionally been reserved only for desktopcomputers. Some of the newest mobile computing devices can rival thecomputing power and communication capacities of many of the existingdesktop computers.

[0002] Although these mobile computing devices are very capable in termsof performance and versatility, they are often not as user-friendly astraditional desktop computers. One particular problem area with mobilecomputing devices is text input. Many applications on mobile computingdevices involve text input. Because of the emphasis on mobility, thesedevices generally do not have a full keyboard for inputting text.

[0003] Several keyboardless inputting means are currently available fora mobile computing device. One particular means is the use of a touchscreen, which integrates a touch sensitive pad with a display.Generally, a user enters text by writing or tapping on the touch screenusing a stylus. A number of different methods may be used by the mobilecomputing device to enable the user to input text using the touchscreen. For example, the mobile computing device may present a virtualkeyboard on the touch screen, allowing the user to enter text by tappingon the virtual keyboard. The mobile computing device may also includehandwriting recognition software so the user can virtually write thetext input on the touch screen. Although the touch screen is capable, itis not very convenient for the user. In particular, the user is requiredto use two hands and exercise quite a bit of eye-hand coordination. Thelarge size of the costly electronic components and the computing powerrequired also render touch screen technology unfeasible in manyapplications.

[0004] Another keyboardless inputting means that is found on manyexisting wireless phones is multitap. Multitap uses a conventionalnumber-key pad. Each of the numbers 2 to 9 on a number-key pad isuniquely associated with three to four letters of the alphabet. A usermay enter a particular letter by pressing the number key associated withthe letter. Since each number key is associated with more than oneletter, the user may have to press the number key up to four times tocycle to the desired letter. Once the desired letter is found, the userhas to wait until the selection is committed and the letter is inputted.The advantage of multitap is that it allows the user to enter text withone hand. However, multitap requires the user to move his fingers overeight different keys. This wide range of motion demands a great deal ofattention by the user, which can be annoying and even dangerous in somesituations. Also, multitap is a slow text input method because of thenumerous key presses that are required and the wait state associatedwith each letter input.

[0005] An efficient and user-friendly means of inputting text continuesto elude those skilled in the art.

SUMMARY OF THE INVENTION

[0006] Briefly stated, the present invention is a system and method forenabling a user to input characters using a directional pad of acomputing device. In one aspect, the invention is directed to acomputer-implemented method for enabling a user to input characters on acomputing device having a directional pad configured to generatedirectional inputs. The method creates mappings for the directionalinputs where each of the mappings associates at least one of thedirectional inputs with at least one of the characters. The methodenables the user to activate one of the mappings by selecting one of thedirectional inputs. While the mapping is activated, the user may input acharacter by selecting a directional input associated with thatcharacter.

[0007] In another aspect, the invention is directed to a computingdevice having a directional pad and a computer-readable medium encodedwith a character input engine. The directional pad is configured togenerate directional inputs. The character engine enables a user toinput characters using the directional pad. The character input engineincludes a plurality of mappings for the directional inputs. Each of themappings associates at least one of the directional inputs with at leastone of the characters.

[0008] In yet another aspect, the invention is directed to acomputer-readable medium encoded with a data structure. The datastructure includes three data fields. The first data field containscharacters. The second data field contains directional input identifiersthat represent directional inputs generated by a directional pad. Thethird data field contains mappings for the directional inputs. Each ofthe mappings associates at least one of the directional inputidentifiers in the second data field with at least one of the charactersof the first data field.

BRIEF DESCRIPTION OF THE DRAWINGS

[0009]FIG. 1 illustrates an exemplary computing device that may be usedin one exemplary embodiment of the present invention;

[0010]FIG. 2 illustrates computing device of FIG. 1 in one exemplaryconfiguration;

[0011]FIG. 3 shows exemplary mappings for associating characters withdirectional inputs of a directional pad; and

[0012]FIG. 4 is an operational flow diagram that shows an exemplaryprocess that enables a user to input characters using a directional pad.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0013] The inventors of the present invention have appreciated thatenabling the user to input data using a simple input mechanism willgreatly enhance the usability of a computing device. Thus, the presentinvention focuses on a system and method for enabling the user toefficiently input characters using a directional pad of a computingdevice. The manner in which the characters are input in the presentinvention is very different from conventional input means. For example,some conventional input means require the use of keys that are notconfigured in an intuitive and convenient manner. These conventionalinput means often require the user to exercise substantial mentalconcentration and a large amount of finger movements just to inputcharacters. In contrast, the present invention provides a more intuitiveand efficient approach for inputting characters and allows the user toconcentrate on the content of the data without being distracted withcomplicated input procedures. These and other aspects of the inventionwill become apparent after reading the following detailed description.

[0014]FIG. 1 illustrates an exemplary computing device that may be usedin one exemplary embodiment of the present invention. With reference toFIG. 1, one exemplary system for implementing the invention includes acomputing device, such as computing device 100. It is to be understoodthat many different kinds of computing devices may implement thisinvention. These computing devices include desktop computers, variousmobile computers such as personal digital assistants, communicationdevices such as wireless phones and portable communication devices,video gaming units, and the like. For illustrative purposes, a generalcomputing device 100 will be described. A computing device that iscapable of implementing this invention may have more, less, or differentcomponents as those shown in FIG. 1.

[0015] Computing device 100 may include various hardware components. Ina very basic configuration, computing device 100 typically includes acentral processing unit 102 and system memory 104. Depending on theexact configuration and type of computing device, system memory 104 mayinclude volatile memory, non-volatile memory, data storage devices, orthe like. These examples of system memory 104 are all consideredcomputer storage media. Computer storage media includes, but is notlimited to, RAM, ROM, EEPROM, flash memory or other memory technology,CDROM, digital versatile disks (DVD) or other optical storage, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to store thedesired information and which can be accessed by computing device 100.Any such computer storage media may be part of device 100.

[0016] Computing device 100 may also contain input component 112 forinputting characters. In particular, input component 112 may include adirectional pad. Directional pad will be discussed in more detail inconjunction with FIG. 2. Briefly stated, a directional pad allows a userto intuitively select directional inputs, such as an input thatindicates left, right, up, down, and center. Output component 114 mayinclude a display, speakers, printer, and the like.

[0017] Computing device 100 may also contain communication connections 116 that allow the device to communicate with other computing devicesover network 120, such as a wireless network, local area network, widearea network such as the Internet, and other communication networks.Communication connections 116 is one example of communication media.Communication media may typically be embodied by computer readableinstructions, data structures, program modules, or other data in amodulated data signal, such as a carrier wave or other transportmechanism, and includes any information delivery media. The term“modulated data signal” means a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. By way of example, and not limitation, communicationmedia includes wired media such as a wired network or direct-wiredconnection, and wireless media such as acoustic, RF, infrared and otherwireless media. The term computer readable media as used herein includesboth storage media and communication media.

[0018] Software components of computing device 100 are typically storedin system memory 104. System memory 104 typically includes an operatingsystem 105, one or more applications 106, and data 107. As shown in thefigure, system memory 104 may also include a character input engine 108.Character input engine 108 is a software component that handlescharacter input for computing device 100. It may be incorporated intothe operating system 105 or applications 106, or it may be a standalonecomponent. Character input engine 108 is configured to enable a user toinput characters using a directional pad and to provide the inputcharacters to applications 106. Character input engine 108 may displayan input guide on a display for guiding the user to input thecharacters. Applications 106 or the user may configure character inputengine 108 to input a particular character based on a specific sequenceof directional inputs.

[0019]FIG. 2 illustrates computing device 100 of FIG. 1 in one exemplaryconfiguration. In the figure, computing device 100 is shown with adisplay 210 and directional pad 220. Three exemplary directional padsjoystick 232, five-switch directional pad 234, and number keypad 236)are shown for illustrative purposes. Computer device 100 may includeother directional pads, such as a rocker pad, a 9-switch directionalpad, and the like.

[0020] A directional pad is an input mechanism that enables a user toefficiently select different directional inputs without undue fingermovements. For example, the user can use his thumb to push joystick 232to the left to select a left input. Using the five-switch directionalpad 234, the user can roll his thumb to the left so that a left input isselected. Both joystick 232 and five-switch directional pad 234 enablethe user to make a selection for a directional input with only minimalfinger movements. Number keypad 236 may also be used to enter adirectional input. For example, the number key 2, 6, 8, 4, and 5 can beconfigured to serve as input buttons for up, right, down, left, andcenter, respectively. Because only five keys in close proximity areused, the number keypad 236 also enables the user to make a selection ofa directional input with only small finger movements.

[0021] Display 210 is configured to present information for a user tointeract with applications executing on computing device 100. Forexample, display 210 may present the characters that are inputted by theuser using the directional pad 220. In the figure, a messagingapplication is executing on computing device 100. Display 210 shows thata user is composing a message for processing by the messagingapplication. The message is displayed to the user as the user iscreating the message by entering each character that makes up themessage.

[0022] Display 210 may also present an input guide 250, which is avisual representation of a mapping that associates a directional inputwith a particular character. The user may use input guide 250 todetermine which particular directional input is associated with acharacter that the user would like to input. For example, input guide250 shows that the “h” character is associated with a “left” directionalinput.

[0023]FIG. 3 shows exemplary mappings for associating characters withdirectional inputs of a directional pad. For illustrative purposes, eachof the mappings is shown with five characters that are positioned toshow their association with different directional inputs of thedirectional pad. For example, mapping 321 associates the characters “a”,“e”,“i”, “o”, and “u” with directional inputs “left”, “center”, “right”,“up” and “down”, respectively. It is to be understood that instead ofone character, a group of two or more characters may be associated witha particular directional input in a mapping. Thus, multiple charactersmay be input with a single directional input. Also, a mapping mayinclude more than five directional inputs, depending on the particulardirectional pad being used.

[0024] The mappings shown in FIG. 3 are exemplary configurations used bya character input engine to enable a user to input characters. In thisexemplary configuration, each of the mappings 321-326 may be activatedfrom a base state 300. Base state 300 enables a user to choose aparticular mapping by selecting a directional input associated with themapping. Base state 300 may be activated when character input isrequired. Base state 300 may also be activated after a user has finishedinputting a character so that the user may input another character. Inanother configuration, a base state may be configured such that one ormore directional inputs are associated with a character or a group ofcharacters, similar to a mapping.

[0025] To input a character, the user first selects a directional inputassociated with the mapping that includes the character. For example, ifthe user wanted to input an “a”, the user may choose mapping 321 frombase state 300 by selecting the “up” directional input. To select aparticular character from a mapping, the user may select the directionalinput associated with that character. For example, from mapping 321, theuser may input the “a” character by selecting the “left” directionalinput.

[0026] Each mapping may be ranked based on usage frequency of thecharacters included in the mapping. For example, vowels, which areperhaps the most frequently used characters, may be included in the samemapping and be assigned a high priority. Directional inputs may also beranked based on the ease of which the user can select them. For example,the “up” directional may be the easiest to select, followed by “left”,“down”, “right” and “center”.

[0027] Mappings 321-326 and the directional inputs may be associated ina manner that facilitates efficiency. One way of enhancing efficiency isto associate a mapping with a directional input based their priorities.For example, the highest-ranking mapping (e.g. mapping 321) may beassociated with the highest ranking directional input (e.g. “up”).Characters included in a particular mapping may be associated withdirectional inputs to enhance efficiency in a similar manner.

[0028] For further illustration, the mappings in FIG. 3 show oneexemplary configuration for associating mappings with directional inputsin the base state 300. The directional inputs in this configuration,ranking from high to low, are “up”, “left”, “right”, “down” and“center”. The “up” directional input is associated with vowels; the“left” directional input is associated with common consonants (i.e. mostfrequently used consonants); the “right” directional input is associatedwith semi-common consonants (i.e. a set of consonants with usagefrequency that are just less than the usage frequency of the commonconsonants); the “down” directional input is associated with less commonconsonants (i.e. a set of consonants with usage frequency that are justless than the usage frequency of the semi-common consonants); and the“center” directional input is associated with the least used characters.

[0029] The mappings 321-326 may be configured for terminal selectionsuch that each selection of a directional input results in the input ofa character. The mappings 321-326 may also be configured to input acharacter after a wait period, an activation button is pressed, or otheractivating conditions. The mappings 321-326 may be further configuredsuch that a user may choose another character group by selecting theassociated directional input. For example, from group 325, the user maychoose character group 326 by selecting the “down” directional input.

[0030] Characters in a mapping may include any character that is usefulto the user in inputting text. As shown in the figures, the charactersinclude the letters of the alphabet, punctuation marks, and formattingcharacters such as space, backspace, and the like. The characters mayalso include numbers, foreign language words and characters, symbols,accents, etc.

[0031] To illustrate the ease of which characters may be entered usingthe present invention, the word “hello” may be entered with only tendirectional inputs using mappings 321-326. The order of the directionalinputs are “right, left, up, center, left, right, left, right, up, andup”. Depending on the mappings, the word may be entered with more orfewer directional inputs.

[0032]FIG. 4 is an operational flow diagram that shows an exemplaryprocess 400 that enables a user to input characters using a directionalpad. Process 400 may be used by a character input engine for interactingwith the user for input characters. The user may select directionalinputs using the directional pad.

[0033] Moving from a start block, the process goes to block 410 wheremappings that associate characters with directional inputs are created.The mappings may be ranked based on the frequency of occurrence of theirconstituent characters. The process continues at block 415.

[0034] At block 415, a base state is activated. The base state enablesthe user to choose a particular mapping by selecting a directional inputassociated with the mapping. The mappings may be associated withdirectional inputs based on the ranking of the mappings and the rankingof the directional inputs. In another configuration, the base state mayenable the user to choose a character by selecting a directional inputassociated with the character. (Not shown) Process 400 goes to block420.

[0035] At block 420, a directional input is received from the user. Theuser may select a directional input using the directional pad. Theprocess continues at block 425 where a mapping associated with theselected directional input is activated. The user may choose adirectional input associated with a character (or a group of two or morecharacters) of the mapping to input that character. The user may alsoselect a directional input associated with another mapping.

[0036] At block 430, a directional input is received from the user. Theprocess continues at decision block 435 where a determination is madewhether the user selected a directional input associated with anothermapping. If so, process 400 returns to block 425 where a mappingassociated with the selected directional input is activated.

[0037] Returning to block 435, if the user selected a directional inputthat is not associated with another mapping, then the user has selecteda directional input associated with a character. The process continuesat block 440 where the character associated with the directional inputis inputted.

[0038] The above specification, examples and data provide a completedescription of the invention. Since many embodiments of the inventioncan be made without departing from the spirit and scope of theinvention, the invention resides in the claims hereinafter appended.

What is claimed is:
 1. A computer-implemented method for enabling a userto input characters on a computing device having a directional padconfigured to generate directional inputs, the method comprising:creating mappings, wherein each of the mappings associates at least oneof the directional inputs with at least one of the characters; enablingthe user to choose one of the mappings by selecting one of thedirectional inputs; and in response to the user selecting a mapping,activating the chosen mapping.
 2. The computer-implemented method ofclaim 1, wherein at least one of the directional inputs is associatedwith a group of at least two of the characters.
 3. Thecomputer-implemented method of claim 1, further comprising enabling theuser to choose at least one of the characters by selecting one of thedirectional inputs; and in response to a selection of one of thedirectional inputs, inputting the character associated with the selecteddirectional input.
 4. The computer-implemented method of claim 1,further comprising: enabling the user to select one of the directionalinputs while the chosen mapping is activated; and in response to aselection of one of the directional inputs, inputting the characterassociated with the selected directional input.
 5. Thecomputer-implemented method of claim 4, further comprising activating abase state that associates the directional inputs with the mappings. 6.The computer-implemented method of claim 5, further comprising, inresponse to inputting the character, reactivating the base state.
 7. Thecomputer-implemented method of claim 1, further comprising ranking themappings; ranking the directional inputs; and associating thedirectional inputs with the mappings based on the ranking of themappings and the ranking of the directional inputs.
 8. Thecomputer-implemented method of claim 7, wherein ranking the mappings isperformed based on a frequency of use of the characters included in themapping.
 9. The computer-implemented method of claim 7, wherein rankingthe directional inputs is performed based on the ease of selection. 10.The computer-implemented method of claim 7, wherein the directionalinput that is the easiest to select is associated with the mapping thatincludes the most frequently used characters.
 11. Thecomputer-implemented method of claim 7, wherein the directional inputthat is the easiest to select is associated with the mapping thatincludes vowels.
 12. The computer-implemented method of claim 7, whereinthe directional input that is the second easiest to select is associatedwith the mapping that includes common consonants.
 13. Thecomputer-implemented method of claim 7, wherein the directional inputthat is the third easiest to select is associated with the mapping thatincludes semi-common consonants.
 14. The computer-implemented method ofclaim 7, wherein the directional input that is the fourth easiest toselect is associated with the mapping that includes less commonconsonants.
 15. The computer-implemented method of claim 7, wherein thedirectional input that is the least easy to select is associated withthe mapping that includes the least common consonants.
 16. Thecomputer-implemented method of claim 1, further comprising: enabling theuser to select one of the directional inputs while the chosen mapping isactivated; and in response to a selection of one of the directionalinputs, activating another mapping.
 17. The computer-implemented methodof claim 1, further comprising displaying a visual representation of thechosen mapping.
 18. A computing device comprising: a directional padconfigured to generate directional inputs; a computer-readable mediumencoded with a character input engine for enabling a user to inputcharacters using the directional pad, wherein the character input engineincludes a plurality of mappings for the directional inputs, and whereineach of the mappings associates at least one of the directional inputswith at least one of the characters.
 19. The computing device of claim18, wherein at least one of the directional inputs is associated with agroup of at least two of the characters.
 20. The computing device ofclaim 18, wherein the character input engine is configured to activateone of the mappings in response to a selection of one of the directionalinputs by the user.
 21. The computing device of claim 18, wherein thecharacter input engine is configured to input at least one of thecharacters in response to a selection of one of the directional inputsby the user.
 22. The computing device of claim 18, wherein the characterinput engine is configured to activate one of the mappings in responseto a selection of one of the directional inputs by the user.
 23. Thecomputing device of claim 22, wherein while one of the mappings isactivated, the character input engine is configured to input at leastone of the characters in response to a selection of one of thedirectional inputs by the user.
 24. The computing device of claim 22,wherein while one of the mappings is activated, the character inputengine is configured to activate another one of the mappings in responseto a selection of one of the directional inputs by the user.
 25. Thecomputing device of claim 18, wherein the directional pad is configuredto produce five directional inputs.
 26. The computing device of claim18, wherein the directional pad is configured to produce more than fivedirectional inputs.
 27. The computer-implemented of claim 18, whereinthe directional pad is at least one of: a joystick, a five-switchdirectional pad, a number keypad, a rocker pad, and a nine-switchdirectional pad.
 28. A computer-readable medium encoded with a datastructure comprising: a first data field containing characters; a seconddata field containing directional input identifiers that representdirectional inputs generated by a directional pad; a third data fieldcontaining mappings, wherein each mapping associates at least one of thedirectional input identifiers in the second data field with at least oneof the characters of the first data field.
 29. The computer-readablemedium of claim 28, wherein at least one of the mappings associates atleast one of the directional input identifiers in the second data fieldwith a group of at least two of the characters of the first data field.30. The computer-readable medium of claim 28, wherein the second datafield contains five directional input identifiers.
 31. Thecomputer-readable medium of claim 28, wherein the second data fieldcontains more than five directional input identifiers.
 32. Thecomputer-readable medium of claim 28, wherein at least one of themappings in the third field associates five directional inputidentifiers with five of the characters in the first data field.
 33. Thecomputer-readable medium of claim 28, wherein at least one of themappings in the third field associates at least one directional inputidentifiers with another one of the mappings.